package info.pello.struts2;


import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;


public class CiudadAction extends ActionSupport implements ModelDriven<Jugador> {

	private static final long serialVersionUID = -6659354552584240539L;

	
	private Ciudad ciudad = new Ciudad();
	private List<Ciudad> listaCiudades = new ArrayList<Ciudad>();
	private CiudadDAO ciudadDAO = new CiudadDAO();
	//private List<Equipo> equipos;
	private DelegacionDAO delegacionDAO = new DelegacionDAO();
	
	@Override
	public Ciudad getModel() {
		return ciudad;
	}
	
	/**
	 * To save or update user.
	 * @return String
	 */
	public String guardarOActualizar()
	{	
		ciudadDAO.guardarOActualizarCiudad(ciudad);
		return SUCCESS;
	}
	
	/**
	 * To list all users.
	 * @return String
	 */
	public String listar()
	{
		listaCiudades = ciudadDAO.listarCiudades();
		return SUCCESS;
	}
	
	/**
	 * To delete a user.
	 * @return String
	 */
	public String eliminar()
	{
		HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST);
		ciudadDAO.eliminarCiudad(Long.parseLong(request.getParameter("id")));
		return SUCCESS;
	}
	
	/**
	 * To list a single user by Id.
	 * @return String
	 */
	public String editar()
	{
		HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST);
		ciudad = ciudadDAO.listarCiudadPorId(Long.parseLong(request.getParameter("id")));
		return SUCCESS;
	}
	
	public Ciudad getCiudad() {
		return ciudad;
	}

	public void setCiudad(Ciudad ciudad) {
		this.ciudad = ciudad;
	}

	public List<Ciudad> getListaCiudades() {
		return listaCiudades;
	}

	public void setListaCiudades(List<Ciudad> listaCiudades) {
		this.listaCiudades = listaCiudades;
	}
	
	public List<Equipo> getEquipos() {

		return equipoDAO.listarEquipos();
	}

	/**
	 * @return the equipoDAO
	 */
	public EquipoDAO getEquipoDAO() {
		return equipoDAO;
	}

	/**
	 * @param equipoDAO the equipoDAO to set
	 */
	public void setEquipoDAO(EquipoDAO equipoDAO) {
		this.equipoDAO = equipoDAO;
	}


}
